Customer Relationship Management (CRM) systems use various information technologies to learn a customer's preferences, offer merchandise to the customer according to those preferences, and to foster or reward customer loyalty. In order to maintain a high level of customer loyalty, it is desirable for a retailer to enhance a customer's in-store experience by anticipating her preferences and offering customized services.